
// Generated/grammars-v4-master/grammars-v4-master/cpp\CPP14.g4 by ANTLR 4.7.2

import org.antlr.v4.runtime.tree.AbstractParseTreeVisitor;

import java.util.*;

/**

 * This class provides an empty implementation of {@link CPP14Visitor},

 * which can be extended to create a visitor which only needs to handle a subset

 * of the available methods.

 *

 * @param <T> The return type of the visit operation. Use {@link Void} for

 * operations with no return type.

 */

public class CPP14BaseVisitor<T> extends AbstractParseTreeVisitor<T> implements CPP14Visitor<T> {

	List<Integer> encode=new ArrayList<Integer>();

	String encode_str="";
	String tree_str="";

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTranslationunit(CPP14Parser.TranslationunitContext ctx) {encode.add(0);encode_str+="0";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitPrimaryexpression(CPP14Parser.PrimaryexpressionContext ctx) {encode.add(1);encode_str+="1";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitIdexpression(CPP14Parser.IdexpressionContext ctx) {encode.add(2);encode_str+="2";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitUnqualifiedid(CPP14Parser.UnqualifiedidContext ctx) {encode.add(3);encode_str+="3";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitQualifiedid(CPP14Parser.QualifiedidContext ctx) {encode.add(4);encode_str+="4";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNestednamespecifier(CPP14Parser.NestednamespecifierContext ctx) {encode.add(5);encode_str+="5";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitLambdaexpression(CPP14Parser.LambdaexpressionContext ctx) {encode.add(6);encode_str+="6";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitLambdaintroducer(CPP14Parser.LambdaintroducerContext ctx) {encode.add(7);encode_str+="7";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitLambdacapture(CPP14Parser.LambdacaptureContext ctx) {encode.add(8);encode_str+="8";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitCapturedefault(CPP14Parser.CapturedefaultContext ctx) {encode.add(9);encode_str+="9";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitCapturelist(CPP14Parser.CapturelistContext ctx) {encode.add(10);encode_str+="10";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitCapture(CPP14Parser.CaptureContext ctx) {encode.add(11);encode_str+="11";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitSimplecapture(CPP14Parser.SimplecaptureContext ctx) {encode.add(12);encode_str+="12";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitInitcapture(CPP14Parser.InitcaptureContext ctx) {encode.add(13);encode_str+="13";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitLambdadeclarator(CPP14Parser.LambdadeclaratorContext ctx) {encode.add(14);encode_str+="14";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitPostfixexpression(CPP14Parser.PostfixexpressionContext ctx) {encode.add(15);encode_str+="15";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTypeidofexpr(CPP14Parser.TypeidofexprContext ctx) {encode.add(16);encode_str+="16";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTypeidofthetypeid(CPP14Parser.TypeidofthetypeidContext ctx) {encode.add(17);encode_str+="17";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitExpressionlist(CPP14Parser.ExpressionlistContext ctx) {encode.add(18);encode_str+="18";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitPseudodestructorname(CPP14Parser.PseudodestructornameContext ctx) {encode.add(19);encode_str+="19";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitUnaryexpression(CPP14Parser.UnaryexpressionContext ctx) {encode.add(20);encode_str+="20";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitUnaryoperator(CPP14Parser.UnaryoperatorContext ctx) {encode.add(21);encode_str+="21";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNewexpression(CPP14Parser.NewexpressionContext ctx) {encode.add(22);encode_str+="22";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNewplacement(CPP14Parser.NewplacementContext ctx) {encode.add(23);encode_str+="23";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNewtypeid(CPP14Parser.NewtypeidContext ctx) {encode.add(24);encode_str+="24";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNewdeclarator(CPP14Parser.NewdeclaratorContext ctx) {encode.add(25);encode_str+="25";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNoptrnewdeclarator(CPP14Parser.NoptrnewdeclaratorContext ctx) {encode.add(26);encode_str+="26";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNewinitializer(CPP14Parser.NewinitializerContext ctx) {encode.add(27);encode_str+="27";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitDeleteexpression(CPP14Parser.DeleteexpressionContext ctx) {encode.add(28);encode_str+="28";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNoexceptexpression(CPP14Parser.NoexceptexpressionContext ctx) {encode.add(29);encode_str+="29";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitCastexpression(CPP14Parser.CastexpressionContext ctx) {encode.add(30);encode_str+="30";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitPmexpression(CPP14Parser.PmexpressionContext ctx) {encode.add(31);encode_str+="31";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitMultiplicativeexpression(CPP14Parser.MultiplicativeexpressionContext ctx) {encode.add(32);encode_str+="32";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAdditiveexpression(CPP14Parser.AdditiveexpressionContext ctx) {encode.add(33);encode_str+="33";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitShiftexpression(CPP14Parser.ShiftexpressionContext ctx) {encode.add(34);encode_str+="34";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitShiftoperator(CPP14Parser.ShiftoperatorContext ctx) {encode.add(35);encode_str+="35";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitRelationalexpression(CPP14Parser.RelationalexpressionContext ctx) {encode.add(36);encode_str+="36";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitEqualityexpression(CPP14Parser.EqualityexpressionContext ctx) {encode.add(37);encode_str+="37";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAndexpression(CPP14Parser.AndexpressionContext ctx) {encode.add(38);encode_str+="38";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitExclusiveorexpression(CPP14Parser.ExclusiveorexpressionContext ctx) {encode.add(39);encode_str+="39";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitInclusiveorexpression(CPP14Parser.InclusiveorexpressionContext ctx) {encode.add(40);encode_str+="40";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitLogicalandexpression(CPP14Parser.LogicalandexpressionContext ctx) {encode.add(41);encode_str+="41";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitLogicalorexpression(CPP14Parser.LogicalorexpressionContext ctx) {encode.add(42);encode_str+="42";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitConditionalexpression(CPP14Parser.ConditionalexpressionContext ctx) {encode.add(43);encode_str+="43";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAssignmentexpression(CPP14Parser.AssignmentexpressionContext ctx) {encode.add(44);encode_str+="44";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAssignmentoperator(CPP14Parser.AssignmentoperatorContext ctx) {encode.add(45);encode_str+="45";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitExpression(CPP14Parser.ExpressionContext ctx) {encode.add(46);encode_str+="46";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitConstantexpression(CPP14Parser.ConstantexpressionContext ctx) {encode.add(47);encode_str+="47";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitStatement(CPP14Parser.StatementContext ctx) {encode.add(48);encode_str+="48";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitLabeledstatement(CPP14Parser.LabeledstatementContext ctx) {encode.add(49);encode_str+="49";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitExpressionstatement(CPP14Parser.ExpressionstatementContext ctx) {encode.add(50);encode_str+="50";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitCompoundstatement(CPP14Parser.CompoundstatementContext ctx) {encode.add(51);encode_str+="51";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitStatementseq(CPP14Parser.StatementseqContext ctx) {encode.add(52);encode_str+="52";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitSelectionstatement(CPP14Parser.SelectionstatementContext ctx) {encode.add(53);encode_str+="53";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitCondition(CPP14Parser.ConditionContext ctx) {encode.add(54);encode_str+="54";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitIterationstatement(CPP14Parser.IterationstatementContext ctx) {encode.add(55);encode_str+="55";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitForinitstatement(CPP14Parser.ForinitstatementContext ctx) {encode.add(56);encode_str+="56";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitForrangedeclaration(CPP14Parser.ForrangedeclarationContext ctx) {encode.add(57);encode_str+="57";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitForrangeinitializer(CPP14Parser.ForrangeinitializerContext ctx) {encode.add(58);encode_str+="58";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitJumpstatement(CPP14Parser.JumpstatementContext ctx) {encode.add(59);encode_str+="59";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitDeclarationstatement(CPP14Parser.DeclarationstatementContext ctx) {encode.add(60);encode_str+="60";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitDeclarationseq(CPP14Parser.DeclarationseqContext ctx) {encode.add(61);encode_str+="61";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitDeclaration(CPP14Parser.DeclarationContext ctx) {encode.add(62);encode_str+="62";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitBlockdeclaration(CPP14Parser.BlockdeclarationContext ctx) {encode.add(63);encode_str+="63";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAliasdeclaration(CPP14Parser.AliasdeclarationContext ctx) {encode.add(64);encode_str+="64";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitSimpledeclaration(CPP14Parser.SimpledeclarationContext ctx) {encode.add(65);encode_str+="65";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitStatic_assertdeclaration(CPP14Parser.Static_assertdeclarationContext ctx) {encode.add(66);encode_str+="66";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitEmptydeclaration(CPP14Parser.EmptydeclarationContext ctx) {encode.add(67);encode_str+="67";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAttributedeclaration(CPP14Parser.AttributedeclarationContext ctx) {encode.add(68);encode_str+="68";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitDeclspecifier(CPP14Parser.DeclspecifierContext ctx) {encode.add(69);encode_str+="69";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitDeclspecifierseq(CPP14Parser.DeclspecifierseqContext ctx) {encode.add(70);encode_str+="70";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitStorageclassspecifier(CPP14Parser.StorageclassspecifierContext ctx) {encode.add(71);encode_str+="71";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitFunctionspecifier(CPP14Parser.FunctionspecifierContext ctx) {encode.add(72);encode_str+="72";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTypedefname(CPP14Parser.TypedefnameContext ctx) {encode.add(73);encode_str+="73";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTypespecifier(CPP14Parser.TypespecifierContext ctx) {encode.add(74);encode_str+="74";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTrailingtypespecifier(CPP14Parser.TrailingtypespecifierContext ctx) {encode.add(75);encode_str+="75";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTypespecifierseq(CPP14Parser.TypespecifierseqContext ctx) {encode.add(76);encode_str+="76";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTrailingtypespecifierseq(CPP14Parser.TrailingtypespecifierseqContext ctx) {encode.add(77);encode_str+="77";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitSimpletypespecifier(CPP14Parser.SimpletypespecifierContext ctx) {encode.add(78);encode_str+="78";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitThetypename(CPP14Parser.ThetypenameContext ctx) {encode.add(79);encode_str+="79";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitDecltypespecifier(CPP14Parser.DecltypespecifierContext ctx) {encode.add(80);encode_str+="80";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitElaboratedtypespecifier(CPP14Parser.ElaboratedtypespecifierContext ctx) {encode.add(81);encode_str+="81";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitEnumname(CPP14Parser.EnumnameContext ctx) {encode.add(82);encode_str+="82";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitEnumspecifier(CPP14Parser.EnumspecifierContext ctx) {encode.add(83);encode_str+="83";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitEnumhead(CPP14Parser.EnumheadContext ctx) {encode.add(84);encode_str+="84";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitOpaqueenumdeclaration(CPP14Parser.OpaqueenumdeclarationContext ctx) {encode.add(85);encode_str+="85";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitEnumkey(CPP14Parser.EnumkeyContext ctx) {encode.add(86);encode_str+="86";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitEnumbase(CPP14Parser.EnumbaseContext ctx) {encode.add(87);encode_str+="87";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitEnumeratorlist(CPP14Parser.EnumeratorlistContext ctx) {encode.add(88);encode_str+="88";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitEnumeratordefinition(CPP14Parser.EnumeratordefinitionContext ctx) {encode.add(89);encode_str+="89";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitEnumerator(CPP14Parser.EnumeratorContext ctx) {encode.add(90);encode_str+="90";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNamespacename(CPP14Parser.NamespacenameContext ctx) {encode.add(91);encode_str+="91";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitOriginalnamespacename(CPP14Parser.OriginalnamespacenameContext ctx) {encode.add(92);encode_str+="92";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNamespacedefinition(CPP14Parser.NamespacedefinitionContext ctx) {encode.add(93);encode_str+="93";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNamednamespacedefinition(CPP14Parser.NamednamespacedefinitionContext ctx) {encode.add(94);encode_str+="94";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitOriginalnamespacedefinition(CPP14Parser.OriginalnamespacedefinitionContext ctx) {encode.add(95);encode_str+="95";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitExtensionnamespacedefinition(CPP14Parser.ExtensionnamespacedefinitionContext ctx) {encode.add(96);encode_str+="96";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitUnnamednamespacedefinition(CPP14Parser.UnnamednamespacedefinitionContext ctx) {encode.add(97);encode_str+="97";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNamespacebody(CPP14Parser.NamespacebodyContext ctx) {encode.add(98);encode_str+="98";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNamespacealias(CPP14Parser.NamespacealiasContext ctx) {encode.add(99);encode_str+="99";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNamespacealiasdefinition(CPP14Parser.NamespacealiasdefinitionContext ctx) {encode.add(100);encode_str+="100";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitQualifiednamespacespecifier(CPP14Parser.QualifiednamespacespecifierContext ctx) {encode.add(101);encode_str+="101";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitUsingdeclaration(CPP14Parser.UsingdeclarationContext ctx) {encode.add(102);encode_str+="102";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitUsingdirective(CPP14Parser.UsingdirectiveContext ctx) {encode.add(103);encode_str+="103";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAsmdefinition(CPP14Parser.AsmdefinitionContext ctx) {encode.add(104);encode_str+="104";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitLinkagespecification(CPP14Parser.LinkagespecificationContext ctx) {encode.add(105);encode_str+="105";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAttributespecifierseq(CPP14Parser.AttributespecifierseqContext ctx) {encode.add(106);encode_str+="106";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAttributespecifier(CPP14Parser.AttributespecifierContext ctx) {encode.add(107);encode_str+="107";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAlignmentspecifier(CPP14Parser.AlignmentspecifierContext ctx) {encode.add(108);encode_str+="108";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAttributelist(CPP14Parser.AttributelistContext ctx) {encode.add(109);encode_str+="109";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAttribute(CPP14Parser.AttributeContext ctx) {encode.add(110);encode_str+="110";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAttributetoken(CPP14Parser.AttributetokenContext ctx) {encode.add(111);encode_str+="111";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAttributescopedtoken(CPP14Parser.AttributescopedtokenContext ctx) {encode.add(112);encode_str+="112";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAttributenamespace(CPP14Parser.AttributenamespaceContext ctx) {encode.add(113);encode_str+="113";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAttributeargumentclause(CPP14Parser.AttributeargumentclauseContext ctx) {encode.add(114);encode_str+="114";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitBalancedtokenseq(CPP14Parser.BalancedtokenseqContext ctx) {encode.add(115);encode_str+="115";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitBalancedtoken(CPP14Parser.BalancedtokenContext ctx) {encode.add(116);encode_str+="116";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitInitdeclaratorlist(CPP14Parser.InitdeclaratorlistContext ctx) {encode.add(117);encode_str+="117";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitInitdeclarator(CPP14Parser.InitdeclaratorContext ctx) {encode.add(118);encode_str+="118";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitDeclarator(CPP14Parser.DeclaratorContext ctx) {encode.add(119);encode_str+="119";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitPtrdeclarator(CPP14Parser.PtrdeclaratorContext ctx) {encode.add(120);encode_str+="120";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNoptrdeclarator(CPP14Parser.NoptrdeclaratorContext ctx) {encode.add(121);encode_str+="121";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitParametersandqualifiers(CPP14Parser.ParametersandqualifiersContext ctx) {encode.add(122);encode_str+="122";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTrailingreturntype(CPP14Parser.TrailingreturntypeContext ctx) {encode.add(123);encode_str+="123";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitPtroperator(CPP14Parser.PtroperatorContext ctx) {encode.add(124);encode_str+="124";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitCvqualifierseq(CPP14Parser.CvqualifierseqContext ctx) {encode.add(125);encode_str+="125";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitCvqualifier(CPP14Parser.CvqualifierContext ctx) {encode.add(126);encode_str+="126";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitRefqualifier(CPP14Parser.RefqualifierContext ctx) {encode.add(127);encode_str+="127";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitDeclaratorid(CPP14Parser.DeclaratoridContext ctx) {encode.add(128);encode_str+="128";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitThetypeid(CPP14Parser.ThetypeidContext ctx) {encode.add(129);encode_str+="129";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAbstractdeclarator(CPP14Parser.AbstractdeclaratorContext ctx) {encode.add(130);encode_str+="130";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitPtrabstractdeclarator(CPP14Parser.PtrabstractdeclaratorContext ctx) {encode.add(131);encode_str+="131";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNoptrabstractdeclarator(CPP14Parser.NoptrabstractdeclaratorContext ctx) {encode.add(132);encode_str+="132";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAbstractpackdeclarator(CPP14Parser.AbstractpackdeclaratorContext ctx) {encode.add(133);encode_str+="133";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNoptrabstractpackdeclarator(CPP14Parser.NoptrabstractpackdeclaratorContext ctx) {encode.add(134);encode_str+="134";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitParameterdeclarationclause(CPP14Parser.ParameterdeclarationclauseContext ctx) {encode.add(135);encode_str+="135";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitParameterdeclarationlist(CPP14Parser.ParameterdeclarationlistContext ctx) {encode.add(136);encode_str+="136";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitParameterdeclaration(CPP14Parser.ParameterdeclarationContext ctx) {encode.add(137);encode_str+="137";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitFunctiondefinition(CPP14Parser.FunctiondefinitionContext ctx) {encode.add(138);encode_str+="138";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitFunctionbody(CPP14Parser.FunctionbodyContext ctx) {encode.add(139);encode_str+="139";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitInitializer(CPP14Parser.InitializerContext ctx) {encode.add(140);encode_str+="140";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitBraceorequalinitializer(CPP14Parser.BraceorequalinitializerContext ctx) {encode.add(141);encode_str+="141";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitInitializerclause(CPP14Parser.InitializerclauseContext ctx) {encode.add(142);encode_str+="142";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitInitializerlist(CPP14Parser.InitializerlistContext ctx) {encode.add(143);encode_str+="143";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitBracedinitlist(CPP14Parser.BracedinitlistContext ctx) {encode.add(144);encode_str+="144";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitClassname(CPP14Parser.ClassnameContext ctx) {encode.add(145);encode_str+="145";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitClassspecifier(CPP14Parser.ClassspecifierContext ctx) {encode.add(146);encode_str+="146";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitClasshead(CPP14Parser.ClassheadContext ctx) {encode.add(147);encode_str+="147";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitClassheadname(CPP14Parser.ClassheadnameContext ctx) {encode.add(148);encode_str+="148";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitClassvirtspecifier(CPP14Parser.ClassvirtspecifierContext ctx) {encode.add(149);encode_str+="149";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitClasskey(CPP14Parser.ClasskeyContext ctx) {encode.add(150);encode_str+="150";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitMemberspecification(CPP14Parser.MemberspecificationContext ctx) {encode.add(151);encode_str+="151";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitMemberdeclaration(CPP14Parser.MemberdeclarationContext ctx) {encode.add(152);encode_str+="152";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitMemberdeclaratorlist(CPP14Parser.MemberdeclaratorlistContext ctx) {encode.add(153);encode_str+="153";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitMemberdeclarator(CPP14Parser.MemberdeclaratorContext ctx) {encode.add(154);encode_str+="154";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitVirtspecifierseq(CPP14Parser.VirtspecifierseqContext ctx) {encode.add(155);encode_str+="155";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitVirtspecifier(CPP14Parser.VirtspecifierContext ctx) {encode.add(156);encode_str+="156";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitPurespecifier(CPP14Parser.PurespecifierContext ctx) {encode.add(157);encode_str+="157";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitBaseclause(CPP14Parser.BaseclauseContext ctx) {encode.add(158);encode_str+="158";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitBasespecifierlist(CPP14Parser.BasespecifierlistContext ctx) {encode.add(159);encode_str+="159";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitBasespecifier(CPP14Parser.BasespecifierContext ctx) {encode.add(160);encode_str+="160";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitClassordecltype(CPP14Parser.ClassordecltypeContext ctx) {encode.add(161);encode_str+="161";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitBasetypespecifier(CPP14Parser.BasetypespecifierContext ctx) {encode.add(162);encode_str+="162";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitAccessspecifier(CPP14Parser.AccessspecifierContext ctx) {encode.add(163);encode_str+="163";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitConversionfunctionid(CPP14Parser.ConversionfunctionidContext ctx) {encode.add(164);encode_str+="164";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitConversiontypeid(CPP14Parser.ConversiontypeidContext ctx) {encode.add(165);encode_str+="165";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitConversiondeclarator(CPP14Parser.ConversiondeclaratorContext ctx) {encode.add(166);encode_str+="166";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitCtorinitializer(CPP14Parser.CtorinitializerContext ctx) {encode.add(167);encode_str+="167";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitMeminitializerlist(CPP14Parser.MeminitializerlistContext ctx) {encode.add(168);encode_str+="168";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitMeminitializer(CPP14Parser.MeminitializerContext ctx) {encode.add(169);encode_str+="169";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitMeminitializerid(CPP14Parser.MeminitializeridContext ctx) {encode.add(170);encode_str+="170";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitOperatorfunctionid(CPP14Parser.OperatorfunctionidContext ctx) {encode.add(171);encode_str+="171";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitLiteraloperatorid(CPP14Parser.LiteraloperatoridContext ctx) {encode.add(172);encode_str+="172";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTemplatedeclaration(CPP14Parser.TemplatedeclarationContext ctx) {encode.add(173);encode_str+="173";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTemplateparameterlist(CPP14Parser.TemplateparameterlistContext ctx) {encode.add(174);encode_str+="174";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTemplateparameter(CPP14Parser.TemplateparameterContext ctx) {encode.add(175);encode_str+="175";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTypeparameter(CPP14Parser.TypeparameterContext ctx) {encode.add(176);encode_str+="176";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitSimpletemplateid(CPP14Parser.SimpletemplateidContext ctx) {encode.add(177);encode_str+="177";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTemplateid(CPP14Parser.TemplateidContext ctx) {encode.add(178);encode_str+="178";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTemplatename(CPP14Parser.TemplatenameContext ctx) {encode.add(179);encode_str+="179";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTemplateargumentlist(CPP14Parser.TemplateargumentlistContext ctx) {encode.add(180);encode_str+="180";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTemplateargument(CPP14Parser.TemplateargumentContext ctx) {encode.add(181);encode_str+="181";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTypenamespecifier(CPP14Parser.TypenamespecifierContext ctx) {encode.add(182);encode_str+="182";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitExplicitinstantiation(CPP14Parser.ExplicitinstantiationContext ctx) {encode.add(183);encode_str+="183";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitExplicitspecialization(CPP14Parser.ExplicitspecializationContext ctx) {encode.add(184);encode_str+="184";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTryblock(CPP14Parser.TryblockContext ctx) {encode.add(185);encode_str+="185";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitFunctiontryblock(CPP14Parser.FunctiontryblockContext ctx) {encode.add(186);encode_str+="186";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitHandlerseq(CPP14Parser.HandlerseqContext ctx) {encode.add(187);encode_str+="187";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitHandler(CPP14Parser.HandlerContext ctx) {encode.add(188);encode_str+="188";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitExceptiondeclaration(CPP14Parser.ExceptiondeclarationContext ctx) {encode.add(189);encode_str+="189";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitThrowexpression(CPP14Parser.ThrowexpressionContext ctx) {encode.add(190);encode_str+="190";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitExceptionspecification(CPP14Parser.ExceptionspecificationContext ctx) {encode.add(191);encode_str+="191";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitDynamicexceptionspecification(CPP14Parser.DynamicexceptionspecificationContext ctx) {encode.add(192);encode_str+="192";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTypeidlist(CPP14Parser.TypeidlistContext ctx) {encode.add(193);encode_str+="193";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitNoexceptspecification(CPP14Parser.NoexceptspecificationContext ctx) {encode.add(194);encode_str+="194";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitTheoperator(CPP14Parser.TheoperatorContext ctx) {encode.add(195);encode_str+="195";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitLiteral(CPP14Parser.LiteralContext ctx) {encode.add(196);encode_str+="196";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitBooleanliteral(CPP14Parser.BooleanliteralContext ctx) {encode.add(197);encode_str+="197";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitPointerliteral(CPP14Parser.PointerliteralContext ctx) {encode.add(198);encode_str+="198";tree_str+=ctx.getText();return visitChildren(ctx);}

	/**

	 * {@inheritDoc}

	 *

	 * <p>The default implementation returns the result of calling

	 * {@link #visitChildren} on {@code ctx}.</p>

	 */

	@Override public T visitUserdefinedliteral(CPP14Parser.UserdefinedliteralContext ctx) {encode.add(199);encode_str+="199";tree_str+=ctx.getText();return visitChildren(ctx);}

}


